$(function() {
    // 读取中将列表json文件
    $.getJSON("../../awards.json", function(data) {
        console.log(data);
        let bool = true;
        let timer = null;
        var tips = [
            "超级豪华大礼",
            "100元现金红包",
            "50元现金红包",
            "20元现金红包",
            "谢谢参与~",
        ];
        let prizeData = data.prizeData; // 奖品列表数组
        let count = data.count;
        $("#change").text(count);
        // 外层光环旋转发亮
        setInterval(function() {
            $(".ring").toggleClass("light");
        }, 1000);
        let appendDom = "";
        for (var i = 0, j = prizeData.length; i < j; i++) {
            appendDom += "<li><span></span><p>" + prizeData[i].text + "</p></li>";
        }
        // 转盘样式生成
        $(".prize").append(appendDom);
        //点击抽奖
        $("#btn").click(function() {
            // 移除自动旋转
            $(".prize").removeClass("running");
            clickFn();
        });
        //随机概率
        function clickFn() {
            if (bool) {
                let angle = 0;
                if(timer) return;
                timer = setInterval(function(){
                    angle -=100;
                    $('.prize').rotate(angle);
                }, 10);
                console.log("中奖序号", data);
                // 执行异步请求获取中奖信息
                setTimeout(function() {
                    var data = [1, 2, 3, 4, 5, 6]; //抽奖概率
                    //data为随机出来的结果，根据概率后的结果
                    data = data[Math.floor(Math.random() * data.length)]; // 1-6的随机数
                    if(timer) {
                        clearInterval(timer);
                        timer = null
                    };
                    switch (
                        data //中奖概率，可控。根据得到的随机数控制奖品
                    ) {
                        case 1:
                            rotateFn(1, 0, prizeData[0].text);
                            break;
                        case 2:
                            rotateFn(2, 300, prizeData[1].text);
                            break;
                        case 3:
                            rotateFn(3, -120, prizeData[2].text);
                            break;
                        case 4:
                            rotateFn(4, -180, prizeData[3].text);
                            break;
                        case 5:
                            rotateFn(5, -240, prizeData[4].text);
                            break;
                        case 6:
                            rotateFn(6, 60, prizeData[5].text);
                            break;
                    }
                }, 2000)

            } else {
                alert("您已无参与次数");
            }
        }
        //选中函数。参数：奖品序号、角度、提示文字
        function rotateFn(awards, angle, text) {
            console.log(text, awards, prizeData[awards - 1]);
            bool = true;
            $(".prize").stopRotate();
            $(".prize").rotate({
                angle: 0, //旋转的角度数
                duration: 4000, //旋转时间
                animateTo: angle + 1440, //给定的角度,让它根据得出来的结果加上1440度旋转。也就是至少转4圈
                callback: function() {
                    // 往后台发送中奖信息
                    // 提示中奖
                    // 如果未中奖 修改中奖提示
                    if (text == "谢谢参与") {
                        alert("谢谢参与");
                    } else {
                        $(".red-body").text(text);
                        win();
                    }
                    count = count - 1;
                    $("#change").text(count);
                    if (count == 0) {
                        bool = false;
                    }
                },
            });
        }

        //中奖信息提示
        $("#close,.win,.btn").click(function() {
            $(".prize").addClass("running");
        });
    });
});
